// #include <iostream>
// #include <fstream>
// using namespace std;

// int main()
// {
//     ofstream out("test.txt", ios_base::app);

//     out.write("hello", 5); // д���ַ���
//     out.put('x'); // д���ַ�
//     out << 123; // ������
//     return 0;
// }

#include <iostream>
#include <sstream>
#include <string>
using namespace std;

class Date
{
    friend ostream& operator<<(ostream& out, Date date);
public:
    Date(int y, int m, int d)
        :_year(y)
        , _month(m)
        , _day(d)
    {}
private:
    int _year;
    int _month;
    int _day;
};

ostream& operator<<(ostream& out, Date date)
{
    out << date._year << ' ' << date._month << ' ' << date._day;
    return out;
}

int main()
{
    stringstream ss;
    Date d{2025, 6, 27};
    ss << d; // 转为字符串

    cout << ss.fail() << endl;
    cout << ss.bad() << endl;

    string s = ss.str(); // 取底层字符串
    cout << s << endl;

    cout << ss.fail() << endl;
    cout << ss.bad() << endl;

    return 0;
}